package com.yuhang.demo.dto.request;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

/**
 * 规则条件更新请求DTO
 * 用于接收前端传递的条件更新参数
 */
@Data
public class ConditionUpdateRequest {

    /**
     * 条件ID（必须存在，用于定位要更新的条件）
     */
    @NotNull(message = "条件ID不能为空")
    private Long id;

    /**
     * 所属规则ID（冗余字段，用于校验条件归属）
     */
    @NotNull(message = "规则ID不能为空")
    private Long ruleId;

    /**
     * 条件类型（如：限定性别、年龄范围）
     */
    @NotBlank(message = "条件类型不能为空")
    private String conditionType;

    /**
     * 条件值（如：男、0-14岁）
     */
    @NotBlank(message = "条件值不能为空")
    private String conditionValue;

    /**
     * 条件间逻辑关系（AND/OR，仅非首个条件有值）
     */
    private String logicRelation;
}
